package gameserver.model.gameobjects.stats;

import gameserver.model.gameobjects.stats.modifiers.StatModifier;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class StatModifiers
{
	private Map<StatModifierPriority, List<StatModifier>> modifiers;

    public StatModifiers() {
        modifiers = new HashMap<StatModifierPriority, List<StatModifier>>();
    }

    public boolean add(StatModifier modifier) {
        if (!modifiers.containsKey(modifier.getPriority())) {
            modifiers.put(modifier.getPriority(), new ArrayList<StatModifier>());
        }
        return modifiers.get(modifier.getPriority()).add(modifier);
    }

    public List<StatModifier> getModifiers(StatModifierPriority priority) {
        if (!modifiers.containsKey(priority)) {
            modifiers.put(priority, new ArrayList<StatModifier>());
        }

        return modifiers.get(priority);
    }
}
